package com.geovis.emergency.spd.biz.pc.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.geovis.common.mybatis.page.PageParam;
import com.geovis.common.mybatis.page.PageResult;
import com.geovis.emergency.spd.entity.pc.entity.PcDisaster;
import com.geovis.emergency.spd.entity.pc.pojo.dto.PcDisasterQueryDTO;
import com.geovis.emergency.spd.entity.pc.pojo.dto.PcDisasterSaveDTO;
import com.geovis.emergency.spd.entity.pc.pojo.dto.PcDisasterUpdateDTO;

import java.util.List;

/**
 * <p>
 * 应急预案指挥模块-灾害管理 服务类
 * </p>
 *
 * @author Lonsho
 * @since 2022-06-08
 */
public interface IPcDisasterService extends IService<PcDisaster> {

    /**
     * 保存灾害
     * @param saveDTO
     */
    void savePcDisaster(PcDisasterSaveDTO saveDTO);

    /**
     * 修改灾害
     * @param updateDTO
     */
    void updatePcDisaster(PcDisasterUpdateDTO updateDTO);
    /**
     * 分页查询
     *
     * @param pageParam
     * @return
     */
    PageResult<PcDisaster> listPage(PageParam<PcDisasterQueryDTO> pageParam);

    /**
     * 列表查询
     * @param queryDTO
     * @return
     */
    List<PcDisaster> getList(PcDisasterQueryDTO queryDTO);

    /**
     * 校验灾害是否在正在进行，或正在设置的演练
     */
    Boolean checkDisasterInDrill(List<String> ids,Boolean containEndDrill);
}
